﻿using Swimj.DomainLib.SeedWork;

namespace Swimj.DomainLib.Entities
{
    public class AuditableAggregateRoot<TKey> : AuditableEntity<TKey>, IAggregateRoot
    {
        /// <summary>
        /// 数据状态
        /// </summary>
        public int DataState { get; set; }

        /// <summary>
        /// 创建人
        /// </summary>
        public string? CreatedBy { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CreatedOn { get; set; }

        /// <summary>
        /// 最后修改人
        /// </summary>
        public string? LastModifiedBy { get; set; }

        /// <summary>
        /// 最后修改时间
        /// </summary>
        public DateTime? LastModifiedOn { get; set; }

        /// <summary>
        /// 删除人
        /// </summary>
        public string? DeletedBy { get; set; }

        /// <summary>
        /// 删除时间
        /// </summary>
        public DateTime? DeletedOn { get; set; }
    }
}